1. Field of the Invention
Apparatuses and methods consistent with the present invention relate to providing services to a device, and more particularly, to providing a data push service to a device.
2. Description of the Related Art
Web browsers enable users to actively search for data on the Internet. However, this web browser-based search method is sometimes time-consuming and requires users to repeatedly access Internet websites to obtain up-to-date data. A method in which a user actively requests service data and then obtains the service data is referred to as a data pull method. In the data pull method, a client initiates a session for communication with a server.
By contrast, a method in which a broadcast station such as a TV broadcast station keeps transmitting service data and a user chooses one of a plurality of channels provided by the broadcast station is referred to as a data push method. In the data push method, a server initiates a session for communication with a client. TV broadcast services provided in the data push method are referred to as data push services.
FIG. 1 is a schematic diagram of a related art data service push system. Referring to FIG. 1, the related art data push service system includes first through third devices 11 through 13, a network address translation (NAT) node 14, a firewall 15, and a server 16. A data push service can be provided to at least one of the first through third devices 11 through 13 by the server 16. It will now be described how the server 16 provides a data push service to the first device 11.
The first device 11 provides information on itself to the server 16 and thus registers itself with the server 16. Thereafter, the server 16 stores the obtained information of the first device 11. The registration of the first device 11 with the server 16 is carried out during a predetermined session initiated by the first device 11.
The NAT node 14 and the firewall 15 exist between the first through third devices 11 through 13 and the server 16 and thus the devices 11 through 13 and server 16 can communicate with each other only via the NAT node 14 and the firewall 15. In detail, while the first device 11 registers itself with the server 16, the NAT node 14 translates a local IP address included in a message transmitted by the first device 11 into a global IP address with reference to the local IP address and the global IP address of the first device 11. The firewall 15 allows the transmission of service data that uses a predetermined port corresponding to a port number allotted for a data push service requested by the first device 11 and disallows the transmission of service data that uses a port other than the predetermined port.
In order that the NAT node 14 and the firewall 15 can perform the aforementioned functions properly, the first device 11 provides the NAT node 14 and the firewall 15 with information including the local IP address and the global IP address of the first device 11 and the port number allotted for the requested data push service. A local IP address is an address used in a local network and is also referred to as a private IP address. A global IP address is an address used in a global network and is also referred to as a public IP address.
Thereafter, if service data to be pushed to the first device 11 is generated, the server 16 pushes the service data to the first device 11 with reference to the information of the first device 11 stored therein. This data push service operation is carried out during a predetermined session initiated for a data push service. While the server 16 pushes the service data to the first device 11, the NAT node 14 translates a global IP address included in a message transmitted by the server 16 into a local IP address with reference to the local IP address and the global IP address of the first device 11, and the firewall 15 allows the transmission of service data that uses the predetermined port and disallows the transmission of service data that uses a port other than the predetermined port.
In order that the NAT node 14 and the firewall 15 can perform the aforementioned functions properly, the server 16 provides the NAT node 14 and the firewall 15 with the information of the first device 11 including the local IP address and the global IP address of the first device 11 and the port number allotted for the requested data push service.
The server 16 must provide the information of the first device 11 to the NAT node 14 and the firewall 15 whenever it wishes to push service data to the first device 11. Therefore, the server 16 must maintain and manage the information of the first device 11. However, since the server 16 serves a plurality of devices including the first device 11, the maintenance and management of information of all the devices results in a considerable load on the server 16. In addition, the greater the number of devices that the server 16 need to push service data to, the larger the amount of information that the server 16 must manage. For this, the storage capacity of the server 16 may have to be increased frequently.
The NAT node 14 translates an address for a session initiated by a client. However, in order that the NAT node 14 can translate an address for a session initiated by a server, the NAT node 14 must be equipped with an additional function that enables the NAT node to translate an address included in a message transmitted by the server. Also, most web servers provides service through a port number 80. In addition, in order that the firewall 15 can prevent the transmission of service data, a network administrator must allot a predetermined port number exclusively for the data push service requested by the device 11.
In order for a server to provide data push services to clients, network infrastructure capable of meeting the aforementioned requirements must be established. However, the establishment of such network infrastructure is costly. Therefore, currently, the application of data push services is limited to areas such as corporation markets or large-scale business-to-business (B2B) housing complexes.